home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / gnu / amiga / sipp.lha / sipp / include / lightsource.h < prev    next >
C/C++ Source or Header  |  1993-03-13  |  1KB  |  57 lines

  1. /**
  2.  ** sipp - SImple Polygon Processor
  3.  **
  4.  **  A general 3d graphic package
  5.  **
  6.  **  Copyright Equivalent Software HB  1992
  7.  **
  8.  ** This program is free software; you can redistribute it and/or modify
  9.  ** it under the terms of the GNU General Public License as published by
  10.  ** the Free Software Foundation; either version 1, or any later version.
  11.  ** This program is distributed in the hope that it will be useful,
  12.  ** but WITHOUT ANY WARRANTY; without even the implied warranty of
  13.  ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14.  ** GNU General Public License for more details.
  15.  ** You can receive a copy of the GNU General Public License from the
  16.  ** Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  17.  **/
  18.  
  19. /**
  20.  ** lightsource.h - Interface to lightsource.c
  21.  **/
  22.  
  23. #ifndef LIGHTSOURCE_H
  24. #define LIGHTSOURCE_H
  25.  
  26. #include <sipp.h>
  27.  
  28.  
  29. /*
  30.  * Information needed in a directional lightsource.
  31.  */
  32. typedef struct {
  33.     Vector dir;
  34. } Dir_light_info;
  35.  
  36. /*
  37.  * Information needed in a spotlight.
  38.  */
  39. typedef struct {
  40.     Vector      pos;
  41.     Vector      point;
  42.     Vector      dir;
  43.     double      cos_fov;
  44. } Spot_light_info;
  45.  
  46.  
  47. extern Lightsource  *lightsrc_stack;  /* Lightsource list. */
  48.  
  49.  
  50. #define lightsource_init()    lightsrc_stack = NULL
  51.  
  52. extern void depthmaps_create();
  53. extern void depthmaps_destruct();
  54.  
  55.  
  56. #endif /* LIGHTSOURCE_H */
  57.